The present invention relates to digital distributed process control systems which have controllers or control stations at each of a number of distributed locations with each controller controlling a plurality of control loops. More particularly, this invention relates to a method and apparatus for carrying out a required control strategy for the loops at any one location with a maximum of flexibility in the type of strategy to be executed while at the same time minimizing the cost per loop.
The control of complex industrial processes has evolved from the use of a large number of simple single-loop controllers, which either perform without central direction or, alternatively, are directed by a central computer, toward the use of distributed systems. In distributed systems, widely spaced control stations are connected for communication with one another and, if desired, with a host computer. Each of the stations usually is capable of controlling a large number of loops and is microprocessor based with the host computer being employed for complex computing, control, and storage functions beyond the capability of the stations.
The individual stations of distributed control systems typically execute control on a number of loops by either of two general approaches. The first is the use of time slots during which are executed selected library algorithms which determine the functional relationship between measured variables (controller inputs) and controlled variables (controller outputs) of the process loops. The second is the use of user-entered programs to determine those functional relationships.
With the time slot approach a fixed number of slots is established for each scan period during which the controller inputs the measured variables and supplies the control signals to the control elements of the loops. Each slot can be used to execute any one of a number of common algorithms stored as firmware in a library of algorithms. The output for each of the slots can alternatively be used as a control output to an associated loop or as an input to another slot where supplementary processing of the control signal can be carried out before the signal is used for control of a loop. This approach has some severe limitations, however, when it is desired to apply it to the extremely diverse combinations of control strategies which may be required in an industrial environment. Thus, for example, where the library of algorithms includes a standard PID algorithm to provide proportional, integral, and derivative functions as well as a summing algorithm, a multiplying algorithm, and a full range of algorithms for logic functions, it will be evident that, while the PID algorithm may make efficient use of the time for one slot, the less complex algorithms may not. Thus, the execution of non-standard control strategies which require a number of summers and multipliers or a number of logic functions, will not use the limited number of slots efficiently.
In the user-entered program approach separate programs are established for each loop to provide the desired control strategy for that loop. The programs are sequentially run to provide each loop in turn with a control signal. While this approach has a maximum flexibility the time required for one cycle through the loops may be excessive where frequent control action is necessary and the control strategy is complex. Thus, a complex PID algorithm may be efficiently handled in the slot approach but it is not so efficiently handled in the program approach. It is, therefore an object of this invention to provide a control execution which can efficiently handle both complex and simple strategies to maximize the number of loops which can be handled by each controller.